RESTful API

一般的 API

GET /getItem
POST /createItem
DELETE /deleteItem/1

REST 架構風格的 API

GET /items
POST /items
DELETE /items/1

REST 是一種 設計風格 而非協議,只要滿足規範都能稱為 RESTful API

REST 核心概念

資源(Resource)

使用標準 HTTP 動詞來表示操作類型

無狀態性(Statelessness)

統一接口(Uniform Interface)

分層架構(Layered System)

可快取性(Cacheability)

RESTful API 的 URI 設計

URI (統一資源識別符)

資源名稱使用名詞

避免使用動詞

階層關係

使用複數形式

RESTful API 範例

  1. 資源
    • /books:表示所有書籍
    • /books/{id}:表示某本特定的書
  2. 操作
HTTP 動詞URI說明
GET/books取得所有書籍。
GET/books/1取得 ID 為 1 的書籍。
POST/books新增一本書。
PUT/books/1更新 ID 為 1 的書籍。
DELETE/books/1刪除 ID 為 1 的書籍。
  1. 回應格式
{
  "id": 1,
  "title": "RESTful API Design",
  "author": "John Doe",
  "price": 19.99
}

索引